package com.zhoukx.singleton.type8;

/**
 * @ClassName SingletonTest08
 * @Description: 单例模式   枚举案例
 *                      优缺点说明：
 *                          1) 这借助JDK1.5中添加的枚举来实现单例模式。不仅能避免多线程同步问题，而
 *                          且还能防止反序列化重新创建新的对象。
 *                          2) 这种方式是Effective Java作者Josh Bloch 提倡的方式
 *                          3) 结论：推荐使用
 * @Author zhoukx
 * @Date 2020/8/6
 **/
public class SingletonTest08 {
    public static void main(String[] args) {
        Singelton instance = Singelton.INSTANCE;
        Singelton instance2 = Singelton.INSTANCE;
        System.out.println(instance== instance2);
        System.out.println(instance.hashCode());
        System.out.println(instance2.hashCode());
        instance.sayOk();
    }
}
// 推荐使用
enum  Singelton{
    INSTANCE; // 属性
    public void sayOk(){
        System.out.println("ok");
    }
}
